/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.ad.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.jeesite.common.dao.CrudDao;
import com.jeesite.common.mybatis.annotation.MyBatisDao;
import com.jeesite.modules.ad.entity.AdAgent;

/**
 * 广告代理商DAO接口
 * 
 * @author Liu,Wenzhao
 * @version 2019-04-15
 */
@MyBatisDao
public interface AdAgentDao extends CrudDao<AdAgent> {

	AdAgent getByAccount(AdAgent var1);

	public void addCustomerNum(AdAgent a);

	public void addAgentNum(AdAgent a);

	/**
	 * 查询代理商总数
	 * 
	 * @param id id
	 * @return
	 */
	long findAgentCountByUpperAgents(@Param("id") String id);

	/**
	 * 查询代理商仪表盘统计图
	 * 
	 * @param id
	 * @return
	 */
	List<Map<String, Object>> find(@Param("id") String id);

	/**
	 * 查询广告主仪表盘统计图
	 * 
	 * @param id
	 * @return
	 */
	List<Map<String, Object>> findCountByVertiser(@Param("id") String id);

	/**
	 * 查询管理员仪表盘统计图
	 * 
	 * @param id
	 * @return
	 */
	List<Map<String, Object>> findCountByGuanLiYuan();

	/**
	 * 删除用户
	 * 
	 * @param userCode
	 * @return
	 */
	int deleteUser(@Param("userCode") String userCode);

	/**
	 * 删除用户角色
	 * 
	 * @param userCode
	 * @return
	 */
	int deleteUserAndAuth(@Param("userCode") String userCode);
}